/**
 * 获取URL地址中的参数
 * @param name 参数的Key
 * @returns {*} 参数的值
 */
export const getUrlParams = (name) => {
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  var r = window.location.search.substr(1).match(reg);
  if (r != null) return unescape(r[2]);
  return null;
};

/**
 * 判断第一个字符串是否以第二个字符串开始
 * @param str 源字符串
 * @param _str 开头字符串
 * @returns {boolean} 是否正确
 */
export const startWith = (str, _str) => {
  let reg = new RegExp("^" + _str);
  return reg.test(str);
};

const dpr = window.devicePixelRatio || 1;

/**
 * Echarts字体,根据dpr变化
 * @returns {number} Echarts字体大小
 */
export const getEchartsFontSize = () => {
  if (dpr === 1) {
    return 12;
  } else if (dpr === 2) {
    return 24;
  } else {
    return 36;
  }
};

/**
 * 获取 rem 计算出来的物理 px 尺寸
 * @param {string|number} rem
 * @returns {number}
 */
export const getPhysicallSize = (rem) => {
  return getActualSize(rem) / parseInt(dpr, 0);
};

/**
 * 获取 rem 计算出来的真实 px 尺寸
 * @param {string|number} rem
 * @returns {number}
 */
export const getActualSize = (rem) => {
  return (parseFloat(rem) * 100);
};
